mixins

Maestro mixes in some behavior into BaseView as, as follows:

FocusMixin

The FocusMixin leverages the FocusManager node, to allow you to get accurate callbacks. If you use the FocusMixin methods for setting focus, you will be able to more easily debug your applications and have more confidence in the focus state of your app, as everything is encapsulated in a well tested mechanism, with accurate events to allow you to make correct assumptions about your app's state

Using the FocusMixin/FocusManager

You must initialize the focusManger, by using the initializeFocusManager method, e.g. initializeFocusManager(m.global). You will typically do this in an app controller.

ALWAYS use the setFocus method provided by the FocusMixin, so you have a predictable behavior when managing focus.

FocusMixin methods

FocusMixin callbacks

You can override the following methods:

If you extend BaseView

If you do not extend BaseView

If you do not extend BaseScreen, and want focus callbacks, then:

    <!-- focus support -->
   <field id="isFocused"  type="boolean" value="false" alwaysNotify="false"/>
   <field id="isChildFocused"  type="boolean" value="false" alwaysNotify="false"/>

KeyMixin

The key mixin provides:

more key docs TBD